/*
 * Se nao tiver ? ele vai deixar add por so estaria sendo passado um Dog mesmo.
 */
package JUNHO.genericos;

import java.util.ArrayList;
import java.util.List;

public class Teste32 {
	
	public static void main(String[] args) {
		List<Dog> l = new ArrayList<Dog>();
		l.add(new Dog("jfksdj"));
		l.add(new Dog("jkdj"));
		alterar(l);
		System.out.println(l);
	}
	
	public static void alterar(List<? super Dog> l)
	{
		l.add(new Dog("pira"));
		l.add(new Bace("p"));
	}
	

}

class Dog{
	private String nome;
	public Dog(String nome) {
		// TODO Auto-generated constructor stub
		this.nome = nome;
	}
	
	@Override
	public String toString() {
		// TODO Auto-generated method stub
		return nome+" ";
	}
}

class Bace extends Dog{
	

	public Bace(String nome) {
		super(nome);
		// TODO Auto-generated constructor stub
	}}